1. Field
Embodiments relate generally to the field of real-time digital media systems.
2. Background
The emergence and advancement of digital media production, including video game production, now allows users to experience viewing digital media content that mimics real life to a high level of detail. The use of enhanced three-dimensional imagery including three-dimensional computer-generated models to imitate physical objects in the real-world further enhances this experience. In addition, specialized imaging equipment with multiple cameras arranged in a rosette formation may be used to capture 360-degree panoramic imagery, including photos and video, of actual real-world scenery from different geographic locations. The combination of such imagery and modern computer technology can be used to create an immersive and interactive virtual environment that simulates the real world or other environments.
A user generally views digital media content using a computing device such as, for example, a personal computer or video game console, coupled to a display screen. The computing device executes an application to process the digital media content and display the content using the display screen. For example, the computing device may execute a digital media player to play video or execute video game software to process video games and display the content of the video or video game on the display screen.
A single computing device coupled to a single display screen is typically used to process and display digital content. Thus, the immersive experience for the user is limited by the number of display screens. Video wall systems have been constructed using multiple display screens that are tiled together to form one flat display screen. However, conventional video walls pose difficulties with accurately displaying different views of certain types of digital content, such as, for example, 360-degree panoramic imagery of real-world scenes. In addition, video walls generally require specialized controller devices to synchronize the multiple display screens.
Systems exist to capture and play videos of panoramic scenes using multiple cameras and multiple screens to play video corresponding to each camera, such as, for example, the Circle-Vision 360 system from The Walt Disney Company. However, such systems rely on independent devices, such as film projectors, that must be mechanically started at the same time. Despite being initially synchronized, independent systems always exhibit some kind of drift over time because of the dissimilarities in the timing mechanisms between the devices. It may be possible to mitigate drifting effects by shortening the duration of the experience, using devices that have relatively low drift-rate, or providing some kind of direct mechanical interlink between the devices. However, for long-form content or arbitrarily long digital experiences, even slight drift between independent systems can, over time, lead to disorienting asynchrony between the displays, which are meant to be components of a larger unified experience. For interactive experiences, such as allowing the user to rewind/play a movie or move a virtual camera around a three-dimensional world, the drift problem becomes even more complex, and a real-time synchronization mechanism becomes increasingly necessary.
Multiple display screens are frequently used with general purpose computing devices to view computer-generated environments, such as in video games. However, the processing power and the number of display ports of the computing device limit the number of display screens that can effectively display such content. It may be possible to compensate for such a limitation by increasing the processing power of the computing device and the number of display ports. However, such a computing device would require specialized hardware for this purpose and consequently, be relatively expensive to produce or purchase for most users. In addition, users would not be able to utilize general purpose computing devices they may already own.
Therefore, users need a capability for viewing any type of digital media content, including three-dimensional computer-generated environments and digital imagery of real-world scenes, using multiple screens that are synchronized so as to create a seamless, immersive experience. These users also need a capability for viewing such digital media content in an immersive way that does not require computing devices with specialized hardware. Further, developers of such interactive distributed display systems need a capability to maintain synchrony between the independent computing devices running independent software.